Method and apparatus for zero-mixing spectrum analysis with Hilbert transform

ABSTRACT

An apparatus ( 1 ) for analyzing a spectrum of an input signal (x(t)) having at least one line with a center frequency (ω x ) at the center of the line comprises:  
     a mixer ( 2 ) for zero-mixing the input signal (x(t)) to produce a base band signal (z(t)) by sweeping a local oscillator frequency (ω s ) generated by a local oscillator ( 3 ),  
     a resolution filter ( 4 ) for filtering the base band signal (z(t)) to produce a filtered base band signal (y(t)) and envelope reconstruction means ( 27 ) for reconstructing the envelope (E(ω)) of the spectrum of the input signal (x(t)) by using an estimated amplitude (ŷ x ) at an estimated center frequency ({circumflex over (ω)} x ) of each line of the input signal (x(t)). Only the reel component (I) of the base band signal (z(t)) is filtered with the resolution filter ( 4 ) and the imaginary component (Q) is generated from the filtered base band signal (y(t) by performing a Hilbert transform in a Hilbert filter ( 21 ) arranged downstream of the resolution filter ( 4 ).

The invention concerns to a method and an apparatus for zero-mixing spectrum analysis.

For example from U.S. Pat. No. 5,736,845 a spectrum analyzer with two step down conversion to the base band is known. In a first down conversion stage with a variable first local oscillator and a first mixer the input signal is transferred to an intermediate frequency. At a second stage with a constant second local oscillator and a second mixer the intermediate frequency is transferred to the base band. This configuration of spectrum analyzer is widely used. However, the two mixer stages are costly and thus it is desirable to have a spectrum analyzer with only one mixer stage. Such a concept is known as zero-mixing concept, which means that the input signal is directly converted to the base band.

The problem in frequency spectrum analyzers using the zero-mixing concept is the problem that surging occurs when the local oscillator frequency approaches the center frequency of one of the lines within the input signal. The envelope of the spectrum of the input signal has to be reconstructed. The central peak, i. e. the amplitude of the signal beyond the resolution filter when the frequency of the local oscillator equals one of the center frequencies of the lines of the input signal, strongly depends on the phase difference between the input frequency component and the sweep signal of the local oscillator. Thus no linear interpolation can reconstruct the spectrum envelope near the central peak.

In WO 03/069359 A1 it is proposed to reconstruct the envelope of the spectrum of the input signal by the use of an estimated amplitude at an estimated center frequency of each line of the input signal, whereby the estimated amplitude and the estimated center frequency are calculated from the time of occurrence, the duration and the maximum value of several halfwaves (wavelets) of the filtered base band signal. In the vicinity of the center frequency of each of the lines of the input signal, the signal outputted from the resolution filter is a surging signal which can be divided into several halfwaves (wavelets). For several halfwaves (wavelets) in the vicinity of the center frequency (when the frequency of the local oscillator approaches or leaves the center frequency) the time of occurrence, the duration and the maximum value of each halfwave are evaluated. It has been found that from the time of occurrence, the duration and the maximum value of several halfwaves an estimated center frequency and an estimated amplitude at the center frequency can be calculated. If the center frequency and the amplitude at the center frequency of each line of the input signal are known, the envelope of the input signal can be reconstructed near the center frequency.

It is a disadvantage of the method and apparatus know from WO 03/069359 A1 that the method is only performed for the reel component of the complex base band signal. Thus, the number of halfwaves (wavelets) is restricted. Thus, for a sufficient accuracy of this method the sweep velocity must be limited.

It is the object of the present invention to improve the known method and the known apparatus in a manner to provide further halfwaves (wavelets) in order to speed up the procedure of reconstructing the envelope.

The object is solved by the features of claim 1 as concerns the method and by the features of claim 9 as concerns the apparatus. The dependent claims comprise further developments of the invention.

According to the invention only the reel component of the base band signal is filtered with the resolution filter and the imaginary component is generated from the reel component of the filtered base band signal by performing a Hilbert transform.

The reconstruction of the envelope of the spectrum of the input signal can then preferably be done on the basis of the reel component and on the basis of the imaginary component generated with the Hilbert transform.

Preferably the reel component of the filtered base band signal is delayed by a delay time equivalent to the processing time of the Hilbert transform in order to enable synchronised further processing of the reel component and of the imaginary component. Preferably the amplitude values of the imaginary component generated by performing the Hilbert transform are corrected by an estimation on the basis of the neighbouring amplitude values of the reel component.

The Hilbert transform can be performed in a Hilbert filter, which can be a digital finite impulse response filter (FIR-filter) having specific coefficients as outlined in the dependent claims.

The concept and the advantages of the present invention can be better understood from an embodiment of the invention which is explained vis-à-vis the state of art embodiment with reference to the drawing. In the drawing

FIG. 1 shows a block diagram of the state of art zero-mixing spectrum analyzer;

FIG. 2A shows the signal beyond the resolution filter and the spectrum envelope reconstructed only on the basis of the filtered base signal for a fast sweep and a phase difference between the input signal and the sweep signal of the local oscillator of φ=0.2π;

FIG. 2B shows the signal beyond the resolution filter and the spectrum envelope reconstructed only on the basis of the filtered base signal for a fast sweep and a phase difference between the input signal and the sweep signal of the local oscillator of φ=0.6π;

FIG. 3A shows the signal beyond the resolution filter and the spectrum envelope reconstructed only on the basis of the base signal for a slow sweep and a phase difference between the input signal and the sweep signal of the local oscillator of φ=0.2π;

FIG. 3B shows the signal beyond the resolution filter and the spectrum envelope reconstructed only on the basis of the base signal for a fast sweep and a phase difference between the input signal and the sweep signal of the local oscillator of φ=0.6π;

FIG. 4 shows a schematic diagram illustrating the selection of halfwaves (wavelets) used for averaging;

FIG. 5 shows the frequency response of the resolution filter R(ω), the weighting function WR(ω) of the frequency response of the resolution filter and the product R(ω)·WR(ω);

FIG. 6 shows the weighting function We(ω) of the envelope obtained from the maxima of the filtered base signal of the resolution filter, the products e(ω)·We(ω), R(ω)·WR(ω) and the resulting envelope E(ω)=R(ω)·WR(ω)+e(ω)·We(ω);

FIG. 7 shows the coefficients of a FIR filter used for implementation of the Hilbert filter;

FIG. 8 shows a transfer function of the Hilbert filter in the frequency domain;

FIG. 9 shows the transfer function of the resolution filter;

FIG. 10 shows the transfer function of the Hilbert filter in another implementation;

FIG. 11 shows traces of the I- and Q-component beyond the Hilbert filter;

FIG. 12 shows a block diagram of a part of the inventive apparatus;

FIG. 12A shows a first embodiment of the Hilbert filter;

FIG. 12B shows a second embodiment of the Hilbert filter;

FIG. 13 shows the correction of the Q-peak values using the neighbouring I-peak values;

FIG. 14 shows the correction of the Q-peak value;

FIG. 15A and

FIG. 15B show two examples of the uncorrected envelope;

FIG. 16 shows another part of the inventive apparatus;

FIG. 17 shows the resolution trace of the I-component;

FIG. 18 shows projecting of the wavelets into discrete frequency classes and thresholding;

FIG. 19 shows different regions for the Fuzzy process;

FIG. 20 shows an example of functions used in different ranges of the Fuzzy process;

FIG. 21 shows the weighting functions used for correction in the Fuzzy process and

FIG. 22A to

FIG. 22C show examples of envelope signals corrected with the inventive method in comparison to the ideal envelope.

For a better understanding of the differences and improvements of the present invention vis-à-vis the state of art known from WO 03/069359 A1 FIG. 1 shows a block diagram of the known apparatus 1 for zero-mixing spectrum analysis. An input signal x(t), which has to be analyzed, is provided to a mixer 2. To facilitate the description it is assumed that the input signal is a sinus-signal having only one circle frequency ω_(x). The input signal can thus be expressed as x(t)=sin(ω_(x) ·t+φ)   (1)

In general, however, the input signal is a superposition of several spectral lines. For each spectral line of the spectrum of the input signal there is a center frequency ω_(x,i). For the present simplified case there is only one center frequency ω_(x). φ is a phase shift with respect to the signal s(t) provided by a local oscillator 3 and fed to mixer 2. The signal s(t) of the local oscillator 3 can be expressed as a function of time t as follows: s(t)=sin(ω_(s)(t)·t)   (2)

The circle frequency ω_(s) of the local oscillator 3 is not constant but a function of time t as the local oscillator is swept from a start circle frequency ω_(start) to a stop circle frequency ω_(stop) within the sweep time T_(sweep). The actual circle frequency ω_(s)(t) of the local oscillator 3 can be expressed as a function of time t as follows: $\begin{matrix} {{\omega_{s}(t)} = {\omega_{start} + {\frac{t}{T_{sweep}}\left( {\omega_{stop} - \omega_{start}} \right)}}} & (3) \end{matrix}$

As already explained in the opening part of the description, the concept is related to the zero-mixing concept. This means that mixer 2 does not convert the input signal x(t) to an intermediate frequency, but the input signal x(t) is directly converted to the base band. Base band signal z(t) is transferred to the resolution filter 4 having the resolution filter frequency response R(ω).

The output signal y(t) of the resolution filter 4 is transferred to absolute value means 5, which outputs the absolute values |y(t)| of the filtered base band signal y(t). The absolute values of the filtered base band signal |y(t)| are transferred to envelope reconstruction means 6 for reconstructing the spectrum envelope E(ω) of the input signal.

However, only on the basis of the absolute values of a filtered base band signal |y(t)| would the reconstruction of the envelope be rather inaccurate in the vicinity of the center frequency ω_(x), which will be explained later on with respect to FIGS. 2 and 3. Thus, detector means 7 is connected to the output of the resolution filter 4 and is provided with the filtered base band signal y(t). Detector means 7 detects the time of occurrence t_(i) (offset), the duration ΔT_(i) (width) and the maximum absolute value y_(i) (peak) of several halfwaves (wavelets) of the filtered base band signal y(t). This data are fed to envelope reconstruction means 6 and used for spectrum envelope reconstruction in the vicinity of the center frequency ω_(x) as will be explained in detail later on.

For a better understanding FIGS. 2A, 2B, 3A and 3B show the absolute values |y| of the filtered base band signal y as a function of the actual frequency ω_(s) of the sweep signal s. As, according to equation (3), the actual frequency ω_(s)(t) of the sweep signal s is a linear function of time t, FIGS. 2A to 3B at the same time show the signal y as a function of time of measurement t.

FIGS. 2A and 2B show a fast sweep measurement, i. e. the total sweep time T_(sweep) in equation (3) is rather short. The total sweep time T_(sweep) is the same for FIGS. 2A and 2B, but for FIG. 2A the phase difference φ between the input signal x and the sweep signal s is φ=0.2π and for FIG. 2B the phase difference φ between the input signal x and the sweep signal s is φ=0.6π. It can be obtained from FIGS. 2A and 2B that a surging occurs when the actual frequency ω_(s)(t) approaches the center frequency ω_(x) or leaves the center frequency ω_(x) of the input signal. The surging frequency is the actual frequency {tilde over (ω)}_(y) of the filtered base band signal y(t). The relation between the actual circle frequency {tilde over (ω)}_(y,i) for halfwave (wavelet) i, the actual frequency ω_(s) at time of occurrence t_(i), when halfwave (wavelet) i occurs, and the center frequency ω_(x) of the input signal can be expressed as follows: ω_(x)=ω_(s)(t=t _(i))+{tilde over (ω)}_(y,i) sweep is approaching ω_(x)   (4) ω_(x)=ω_(s)(t=t _(i))−{tilde over (ω)}_(y,i) sweep is leaving ω_(x)   (5)

The equation (4) is true when the sweep is approaching center frequency ω_(x) (ω_(s)<ω_(x)). Equation (5) is true when the sweep is leaving ω_(x) (ω_(s)>ω_(x)).

An attempt can be made to reconstruct the envelope of the spectrum of the input signal by fitting an envelope function e(ω) through the absolute maxima y_(i) of the absolute values |y| of the filtered base band signal y as shown in FIGS. 2A and 2B. This reconstruction method is successful in a frequency range FR₁ and FR₅ far from the center frequency ω_(x) of the input signal. However, in the vicinity of the center frequency ω_(x) this approach is not successful as the peaks of the absolute values |y| of the filtered base band signal y near the center frequency ω_(x) strongly depend on the phase difference φ between the input signal x and the sweep signal s. This can be seen by comparing FIGS. 2A and FIG. 2B. As already mentioned the phase difference φ is φ=0.2π in FIG. 2A and φ=0.6π in FIG. 2B. In the case of FIG. 2B a small maximum occurs at the center frequency ω_(x) leading to a minimum of curve e(ω). Thus this approach is totally unreliable in the frequency range FR₃ and cannot be used as a single method in frequency ranges FR₂ and FR₄. Only in frequency ranges FR₁ and FR₅ can this method be used.

The same effect appears to be true for the fast sweep situation shown in FIG. 3A for phase difference φ=0.2π and shown in FIG. 3B for phase difference φ=0.6π.

An estimation of the center frequency ω_(x) and of the amplitude y_(x) at the center frequency ω_(x) is made on the basis of the time of occurrence (“offset”) t_(i), the duration (“width”) ΔT_(i) and the maximum absolute value y_(i) of several halfwaves (wavelets) i . i is the index of the halfwave t_(i), ΔT_(i) and y_(i) are indicated for one of the halfwaves in FIG. 2A.

The duration (“width”) ΔT_(i) of the halfwave (wavelet) is half of the period and thus is related to the actual frequency {tilde over (ω)}_(y,i) of base band signal y by $\begin{matrix} {{\overset{\sim}{\omega}}_{y,i} = {\frac{2\pi}{{2 \cdot \Delta}\quad T_{i}} = \frac{\pi}{\Delta\quad T_{i}}}} & (6) \end{matrix}$

Inserting equation (6) in equations (4) and (5) leads to $\begin{matrix} {{\hat{\omega}}_{x,i} = {{\omega_{s}\left( {t = t_{i}} \right)} \pm \frac{\pi}{\Delta\quad T_{i}}}} & (7) \end{matrix}$

An estimated value for the center frequency {circumflex over (ω)}_(x,i) is obtained by equation (7) from the time of occurrence (“offset”) t_(i) and the duration (“width”) ΔT_(i) for each evaluated halfwave (wavelet) i individually.

Since the resolution filter frequency response R(ω) is known, an estimated amplitude value ŷ_(x,i) can be obtained from the absolute maximum value (peak) y′_(i) of the evaluated halfwave (wavelet) i and the duration (“width”) ΔT_(i) of the evaluated halfwave i by $\begin{matrix} {{\hat{y}}_{x,i} = {\frac{y_{i}^{\prime}}{R\left( {\overset{\sim}{\omega}}_{y,i} \right)} = \frac{y_{i}^{\prime}}{R\left( \frac{\pi}{\Delta\quad T_{i}} \right)}}} & (8) \end{matrix}$

From formulas (7) and (8) an estimated value of the center frequency {circumflex over (ω)}_(x,i) and an estimated amplitude value ŷ_(x,i) at the center frequency are obtained for each evaluated halfwave (wavelet) individually. The different values obtained from the different halfwaves have to be averaged. Preferably not all values of all evaluated halfwaves are included in the averaging procedure.

Only the estimated values of distinguished halfwaves (wavelets) are used for averaging. To select the suitable values, the frequency range is divided into intervals 11 a, 11 b as shown in FIG. 4. Preferably there is a first set of intervals 11 a and a second set of intervals 11 b, whereby the second set of intervals 11 b is overlapping the first set of intervals 11 a most preferably by 50%. Each estimated value for the center frequency {circumflex over (ω)}_(x,i) is related to these intervals. Each time {circumflex over (ω)}_(x,i) of a certain halfwave (wavelet) falls into a specific interval, a count is assigned to this interval, i.e. a counter for this interval is incremented. After having related all values {circumflex over (ω)}_(x,i) of all evaluated halfwaves (wavelets) to the intervals 11 a, 11 b, distinguished intervals are selected which have a minimum number of counts. This threshold of minimum number of counts must be determined experimentally as a fraction of nominal wavelet count (NWC), which is the theoretical maximum of wavelets per classification interval 11 a, 11 b. A well working minimum number of counts appears to be around 0.9 of the nominal wavelet count.

In FIG. 4 it is shown how the estimated values for the halfwaves (wavelets) are projected into the intervals. The number of counts is indicated for each interval 11 a, 11 b. In the present example only interval 11 c having the highest number of 8 counts is selected for averaging. This means that all estimated values of the center frequency {circumflex over (ω)}_(x,i) and all estimated amplitude values ŷ_(x,i) of the selected interval 11 c are added and divided by the number of counts n of the selected interval 11 c as follows (in the example n=8): $\begin{matrix} {{\hat{\omega}}_{x} = {\frac{1}{n}{\sum\limits_{i = 1}^{n}{\hat{\omega}}_{x,i}}}} & (9) \\ {{\hat{y}}_{x} = {\frac{1}{n}{\sum\limits_{i = 1}^{n}{\hat{y}}_{x,i}}}} & (10) \end{matrix}$

The remaining step is to reconstruct the spectrum envelope E(ω). In the frequency range FR₃ around center frequency ω_(x) and partly in the frequency ranges FR₂ and FR₄ the known resolution filter frequency response R(ω) is used. FIG. 5 shows the resolution filter frequency response R(ω) which has the maximum ŷ_(x) obtained from formula (10) and the estimated center frequency {circumflex over (ω)}_(x) obtained from formula (9) as fitting parameters. The resolution filter frequency response R(ω) is weighted by a weighting function WR(ω), which is also shown in FIG. 5. The weighting function WR(ω) equals 1 in the frequency range FR₃, equals 0 in the frequency ranges FR₁ and FR₅ and descends from 1 to 0 in the frequency ranges FR₂ and FR₄ . The resulting function R(ω)·WR(ω) can be seen from FIG. 5 additionally.

In the frequency ranges FR₁ and FR₅ far from center frequency ω_(x) the envelope e(ω) of the spectrum is reconstructed by using the maximum absolute values y′_(i) of the filtered base band signal y as shown in FIGS. 2A, 2B, 3A and 3B. The respective weighting function for this “original” envelope e(ω) equals 1 in the frequency ranges FR₁ and FR₅, equals 0 in frequency range FR₃ and descends from 1 to 0 in frequency ranges FR₂ and FR₄. The resulting spectrum envelope E(ω) is obtained from E(ω)=R(ω)·WR(ω)+e(ω)·We(ω)   (11) and is additionally shown in FIG. 6.

If the input signal x(t) contains more than one spectral line the above described procedure has to be repeated for each spectral line.

In the above concept, polarity of a wavelet was assumed by comparing its peak with the peak of a previous wavelet. If it was greater, formula (4) for approaching was used, if it was smaller, formula (5) for leaving was used. The same information can be gained by comparing the width of the wavelet with the previous one. Preferably both of these heuristics are used to achieve the best possible noise resistance.

In the state of art embodiment the signal y(t) beyond resolution filter 4 is only the in-phase component I of the complex signal. The quadrature component Q of the base band signal is not available. This reduces the accuracy of the method.

The inventive improvement is related to the generation of the quadrature component Q to be additionally used for the envelope reconstruction. If not only the wavelets of the reel in-phase component I of the filtered base band signal y(t) filtered by the resolution filter 4 but also the imaginary quadrature phase component Q of the filtered base band signal y(t) is available, the total number of wavelets which can be used for reconstructing the envelope is significantly increased. Thus, the accuracy of the method is increased. On the other hand, with a given accuracy which is to be reached the sweep velocity can be increased because even if the sweep velocity is doubled the same total amounts of useable wavelets is obtained compared to the state of the art method in which only the reel component I is evaluated.

FIG. 12 shows a first part of the inventive apparatus whereas FIG. 16 shows a second part of the inventive apparatus. Only the components which are different from the state of the art apparatus shown in FIG. 1 are shown in FIG. 12 and 16. This means that only the resolution filter 4 and all parts following the resolution filter 4 are shown in FIGS. 12 and 13 and especially mixer 2 and local oscillator 3, which are shown in FIG. 1, are not shown in FIG. 12 but are also present in the inventive apparatus.

As shown in FIG. 12 the inventive apparatus comprises a Hilbert filter 21 for performing a Hilbert transform of the filtered base band signal y(t) filtered by the resolution filter 4. Thus, the input of the Hilbert filter 21 is connected to the output of resolution filter 4. Also, an optional delay buffer 20 is connected with its input to the output of resolution filter 4. The delay buffer 20 is preferred for the best mode apparatus but is optional. The output of the Hilbert filter 21 and of the delay buffer 20 are connected to a correction unit 22.

As shown in FIG. 16 the reel in-phase component I and also the output with the imaginary quadrature corrected component Q′ are supplied to the envelope reconstruction unit 27. The output of the envelope reconstruction unit 27 is connected with the input of a Fuzzy peak correction unit 26 which outputs the corrected envelope signal. The outputs of the in-phase component I and of the quadrature phase component Q′ of the correction unit 22 are also both connected with wavelet detector 23. The output of wavelet detector 23 is connected with the wavelet translation unit 24. The output of the wavelet translation unit 24 is connected with wavelet classification unit 25. The output of the wavelet classification unit 25 is connected with Fuzzy peak correction unit 26 in order to control the Fuzzy peak correction in the Fuzzy peak correction unit 26. The function of the block elements shown in block diagrams of FIG. 12 and 16 will be explained later on.

According to the invention the Hilbert transformation is used to generate the imaginary quadrature component Q from the reel in-phase component I. The Hilbert transformation is carried out in Hilbert filter 21. Preferably Hilbert filter 21 is realised as a finite impulse response digital filter FIR-filter. FIG. 12A and FIG. 12B show two possible embodiments of such a FIR-filter. It should be noted that also other embodiments of Hilbert filter 21 are possible within the scope of the present invention.

As shown in FIG. 12A the filtered base band signal y filtered by the resolution filter 4 is inputted to the Hilbert filter 21. The filtered base band signal y is supplied to a number of multipliers 30 _(−M) . . . 30 _(M-2), 30 _(M−1), 30 _(M). The first multiplier 30 _(−M) is connected with a first delay element 31 _(−M) which is connected to a first adder not shown in FIG. 12A. The FIR-filter shown in FIG. 12A comprises several such structure elements designated as tabs. In the shown embodiment there are 2M tabs. Each adder 30 _(M-2), 30 _(M−1), 30 _(M) receives the value of the delay element of the proceeding tab and of a respective multiplier and outputs the added value to the next delay element. Each multiplier 30 _(−M) . . . 30 _(M) multiplies the digital input value of the filter base band signal y with a specific coefficient h_(n). As the index n runs from −M to +M there are 2M+1 different coefficients.

FIG. 12B shows a different embodiment of a digital FIR-filter. The difference with respect to the embodiment shown in FIG. 12A mainly is that the delay elements 31 _(−M) . . . 31 _(M−1) are not located between the adders 30 _(−M−1) . . . 30 _(M) but in the input line 32 of the multipliers 30 _(−M) . . . 30 _(M).

It should be noted that in the preferred embodiment resolution filter 4 and all elements downstream of the resolution filter 4 are in the digital regime and are realised by digital signal processing. Thus, as shown in FIG. 1 an analog/digital-converter 33 is situated between mixer 2 and resolution filter 4. However, in other embodiments of the inventive apparatus analog/digital-converter 33 can also be present before mixer 2 or between resolution filter 4 and Hilbert filter 21 for example.

The coefficients h_(n) of Hilbert filter 21 shown in FIG. 12A and 12B are defined by $\begin{matrix} {{{h_{n} = \frac{1 - {\mathbb{e}}^{j\quad n\quad\pi}}{n\quad\pi}},{n \neq 0},{{- M} \leq n \leq {+ M}}}{{h_{n} = 0},{n = 0}}} & (12) \end{matrix}$

Equation (12) shows that Hilbert transformation is not causal. Thus, an approximation has to be used. Preferably an approximation by FIR-filter with linear phase is used. The impulse response is symmetrically truncated to finite length and its delay is half of this length. As shown in FIG. 7 a preferred filter is a 31 taps FIR-filter. FIG. 7 shows the coefficients h_(n) of the FIR-filter.

Choosing an odd number of taps causes half of the coefficients to be null. This optimizes the realization of this filter 21. Some variables have to be defined for further description as follows: f_(r) is the frequency related to resolution bandwidth. Spp is the sampling frequency to resolution bandwidth ratio (typically 13.33).

FIG. 8 shows the transfer function H(f_(r)) of the Hilbert filter in the frequency domain. The figure shows that the Hilbert filter approximation does not have a homogenous gain. Thus, the output signal Q should be corrected. Correction is mainly needed for frequencies that are passed through the Gauss resolution bandwidth filter 4. The Gauss curve of the transfer function of the resolution filter 4 is shown in FIG. 9.

For frequencies that are passed through the resolution filter 4 the Hilbert filter 21 has some ripple. Less taps of the Hilbert filter cause smaller ripple. Thus, a Hilbert filter 21 that has only 7 taps can be used. This helps to implement this filter for higher sampling rates and greater resolution bandwidths. The suppression of higher frequencies including noise is still insignificant.

FIG. 10 shows the frequency characteristic of the transfer function H(f_(r)) of a 7 taps Hilbert filter. FIG. 11 shows traces of the I-component and created Q-component signal beyond the Hilbert filter 21 and the delay buffer 20. What is shown is the absolute value in the logarithmic scale. It can be seen that the Q-component has to be corrected to get accurate envelope. The method of correction is described hereafter.

The following text contains some terms which are defined as follows: Resolution trace I is the waveform of the signal y(t) beyond the resolution filter 4 created by sweeping over a single frequency (see I-component in FIG. 11). Resolution trace Q is the waveform of the signal beyond the Hilbert filter 21 (see Q component in FIG. 11). Wavelet is the portion of the resolution trace (half-wave, section between two zero-crossings), described by its width (length in samples) and peak (maximum absolute value). Wavelet frequency offset is the frequency difference between the sweep signal and the input signal (assuming single frequency component in the input signal) at the time of the wavelet's occurrence, i.e. w_(x−w) _(s)(t_(wavlet)). Relative frequency offset is the frequency offset related to resolution bandwidth of the resolution filter 4.

The block diagram of signal process with Q-correction is shown in FIG. 12. We have to insert the delay buffer 20 for the I-component to match correct Q samples at the output of the Hilbert filter 21 in order to compensate the runtime through Hilbert filter 21 by the delay buffer 20. Q-correction is performed in correction unit 22. The mixer 2, local oscillator 3 and resolution filter 4 are identical with the embodiment of FIG. 1 and thus not shown in FIG. 12. The output of resolution filter 4 is provided to Hilbert filter 21 and delay buffer 20.

The easiest method for Q-correction is to multiply the whole Q wavelet, so that its peak is the average of the I peaks beside it in logarithm scale, as shown in FIG. 13. This leads to formula (13). $\begin{matrix} {{Coef}_{dB} = {\frac{{MaxI1}_{dB} + {MaxI2}_{dB}}{2} - {MaxQ}_{dB}}} & (13) \end{matrix}$

Unfortunately signal processing is made in linear scale, so numerous mathematic operations are necessary. Thus, this method is not preferred for real-time signal processing.

Hilbert filter frequency response is known. As there is an exact relation between wavelet width and relative frequency offset, we can find a multiplying correction coefficient for each Q wavelet. It is $\begin{matrix} {f_{r} = \frac{Spp}{2 \cdot n}} & (14) \end{matrix}$ wherein

f_(r) is the relative frequency

Spp is the sampling frequency to resolution bandwidth ratio

n is the Q wavelet width.

Further, it is coef=H(f _(r))   (15) wherein

coef is the multiplying coefficient

H(f_(r)) is the Hilbert filter frequency response.

There are only a few possible valid wavelet widths (preferably 2-32). Thus, it is helpful to prepare a correction table with two items n and coef. It is not necessary to correct wavelets greater than 32 samples. These wavelets are close to the signal, where frequency nears zero (ω_(x)−ω_(s)→0). If it is sufficiently precise to compute Q-component by a Hilbert filter 21 with a small number of tabs, additional correction of the peak is needed as described later on.

Because there is a small set of wavelet widths, that means also a small set of multiplying correction coefficients, the accuracy of this method is not sufficient. For the best results we have to combine both methods described above.

Each wavelet is multiplied by a coefficient according to a second method. Then the difference between the actual maximum and expected maximum is computed in linear scale by $\begin{matrix} {{ACoef} = {\frac{{MaxI1} + {MaxI2}}{2} - {{MaxQ} \cdot {Coef}}}} & (16) \end{matrix}$ and finally this difference ACoef is added to all samples of the wavelet. This simplification is allowable because the difference is small and it has practically no effect on the outputted envelope E(ω). This method is illustrated in FIG. 14.

The next step of the signal processing is computing the envelope E(ω) of the complex signal (I, Q′) by the known cordic algorithm. This is accomplished in the envelope reconstruction unit 27. The cordic algorithm computes the magnitude and phase angle of a complex signal with the reel component I and the imaginary component Q′. The magnitude represents the envelope E(ω).

A block diagram of the second part of the signal processing is shown in FIG. 16. As described, envelope reconstruction is located in cordic unit 22 which receives the components I and Q′ from Q correction unit 22 shown in FIG. 12. Components I and Q′ are also received by wavelet detector 23. The output of wavelet detector 23 is passed to wavelet translation unit 24. The output of the wavelet translation unit 24 is passed to wavelet classification unit 25. The function of units 23 to 25 is described later on in detail. The units work similar as wavelet detector 7 in FIG. 1.

Fuzzy peak correction unit 26 replaces envelope reconstruction unit 6 in FIG. 1.

FIGS. 15A and 15B show the signal beyond envelope reconstruction cordic unit 22 for a different initial phase. It can be seen that a peak correction is needed to get precise envelope trace, as it was mentioned before.

Peak correction is an algorithm detects frequency components from the resolution traces and then reconstructs respective parts of the envelope with the known shape of resolution filter R(ω).

For the following explanation the following terms have to be defined: Wavelet polarity is the sign of frequency offset. It is positive when the sweep approaches w_(x). It is negative when the sweep leaves w_(x). Wavelet detection range is the range of frequency offset at which wavelets are detected and taken valid for further processing. It matches the range of wavelet widths. Wavelet cumulation factor is the number of consequent half-waves in the resolution trace which compose the stream of wavelets. Nominal wavelet count is the theoretical number of wavelets that can be detected in an ideal resolution trace in a particular wavelet detection range. The k-factor is the relative sweeptime. The k-factor is defined by $\begin{matrix} {k = \frac{T_{sweep} \cdot {Span}}{{RBW}^{2}}} & (17) \end{matrix}$

FIG. 17 shows the resolution trace of I-component (or Q-component respectively) where the frequency ω_(s)(t) of the sweep signal s(t) is close to an input frequency component ω_(x).

Width of the wavelet relates to the relative frequency offset by equation (18): $\begin{matrix} {{f_{r} = \frac{Spp}{2 \cdot n}},{n = \frac{Spp}{2 \cdot f_{r}}}} & (18) \end{matrix}$

Wavelets from a certain detection range have to be detected with wavelet detector 23. This means that only wavelets are needed that have their width in defined boundaries. This wavelet validation is made by wavelet detector 23 on both traces I and Q′. For further processing it is useful to have the same number of wavelets over different sweep conditions (Spp, k-factor).

Average wavelet width {overscore (n)} over the detection range can be computed by: $\begin{matrix} {\overset{\_}{n} = {\frac{1}{f_{r2} - f_{r1}}{\int_{f_{r1}}^{f_{r2}}{\frac{Spp}{2 \cdot f_{r}}{\mathbb{d}f_{r}}}}}} & (19) \end{matrix}$

The number of samples n₁₂ over the detection range is equal to: n ₁₂ =k·Spp·(f _(r2) −f _(r1))   (20)

It follows that the nominal wavelet count NWC can be calculated by $\begin{matrix} {{NWC} = {\frac{n_{12}}{\overset{\_}{n}} = \frac{2 \cdot k \cdot \left( {f_{r2} - f_{r1}} \right)^{2}}{\ln\quad\frac{f_{r2}}{f_{r1}}}}} & (21) \end{matrix}$

It is not easy to find the boundaries f_(r1) and f_(r2) of the detection range to get the same nominal wavelet count NWC for different k. Best results are achieved by recursive computing as follows: The closest relative frequency of the detection range is chosen to be for example f_(r1)=0.3. There are no wavelets or wrong wavelets for frequencies below this limit.

The frequency offset in samples is n ₀ =k·Spp·f _(r1)   (22) n_(m) with $\begin{matrix} {n_{m} = {n_{m - 1} + \frac{{Spp}^{2} \cdot k}{2 \cdot n_{m - 1}}}} & (23) \end{matrix}$ is counted M=NWC·Cumulation times. The frequency offset is $\begin{matrix} {f_{r2} = \frac{n_{M}}{k \cdot {Spp}}} & (24) \end{matrix}$

Now the minimum and maximum width can be computed by $\begin{matrix} {n = {{Cumulation} \cdot \frac{Spp}{2 \cdot f_{r}}}} & (25) \end{matrix}$

For the next processing it is desirable to have enough wavelets that are not too small. The polarity is generated by a polarity predictor. This predictor compares the width of present and previous wavelet and uses the knowledge of the resolution filter frequency response to estimate whether the sweep signal approaches or leaves the frequency component ω_(x) of the input signal.

Of course the amount of detected wavelets will be smaller in cases where the signal has a low s/n (signal/noise) ratio or where two close frequency components in comparison with resolution bandwidth are included.

Each wavelet can be transformed in wavelet translation unit 24 to give information about the input signal frequency component that caused its occurrence. The width of the wavelet relates to immediate frequency of resolution trace by equation (26): $\begin{matrix} {f_{y} = \frac{1}{2 \cdot {width}}} & (26) \end{matrix}$

We can assume that: f _(x) =f _(s)(t=offset)+f _(y) for positive wavelets (27) f _(x) =f _(s)(t=offset)−f _(y) for negative wavelets (28) wherein

f_(x) is the searched frequency

f_(s) is the immediate sweep frequency

It is needed to process positive and negative wavelets separately. Once we have the streams of translated wavelets, we need a mechanism that will sum up these pieces of information to produce reliable description of emerging frequency components.

This is accomplished by projecting the wavelets into discrete frequency classes in the form of intervals 11 a, 11 b and by thresholding. FIG. 18 illustrates this process. In a real situation two traces I and Q are processed in order to have more useable wavelets.

The frequency classes are composed of intervals 11 a and 11 b used in wavelet classification unit 25 which are preferably overlapped by 50% to preserve the homogeneity of the frequency axis. Class width and threshold must be determined experimentally. It is preferred that the width of each class in samples is equal to 2·Spp. Well working threshold appears to be more than 8 wavelets.

By this process one frequency class (e.g. interval 11 c) is selected. By averaging of all projected wavelet positions we can get the exact position where the peak correction should be applied. Together with this position we also have the count of projected positive or negative wavelets. This information is used to recognize whether there is an isolated peak or whether the peak is close to another peak and one type (approaching or leaving) of wavelets dominates or if the signal is noisy which results in less wavelets.

Now the Fuzzy peak correction performed in the correction unit 26 is described. At this part of the signal processing we have the envelope trace and accurate position of the needed correction. Now we have to compute the regular shape of the correction. The envelope trace is not replaced by this correction shape directly. Some fuzzy rules that improve the result can be used.

For the correction we need the levels of the envelope trace for the times when frequency offset is equal to±0.5 RBW and±1 RBW. RBW is the resolution bandwidth of resolution filter 4. Difference 0.5 RBW in samples can be computed by: $\begin{matrix} {{dif} = {{round}\left( {k \cdot \frac{Spp}{2}} \right)}} & (29) \end{matrix}$

Because the envelope trace is not ideal the levels in given times as the average of several samples have to be calculated. For example four numbers L(−1.0), L(−0.5), L(0.5), L(1.0) are received as shown in FIG. 19. Peak level L(0.0) is computed dependent on their differences and the number of wavelets. This is done in order to get a more stable amplitude value.

Once all five levels are obtained, the regular shape of the corrected envelope can be created. These five points divide the correction shape into four parts as shown in FIG. 20. In each part both points are interpolated by some simple curves. All interpolation curves are computed in linear scale.

For the best approximation of the envelope and correction shape and for the better interpolation of noisy signals preferably weighting functions as shown in FIG. 21 are used.

The weights are preferably computed by w ⁻=min(8, PositiveWaveletCount)/8   (30) w ₊=min(8, NegativeWaveletCount)/8   (31)

Also other conditions have effect on the weights. Less than two negative wavelets decrease weight w⁻. On the other hand less than two positive wavelets decrease weight w₊. Weight w₀ is computed as the maximum of both weights w⁻ and w₊ computed above.

In FIGS. 22A to 22C there are some examples of corrected signal plotted in dark lines in comparison to an ideal envelope plotted in light lines. FIG. 22A shows the result for a single frequency component ω_(x) in the input signal. FIG. 22B shows the result for a single frequency component in the input signal with a low signal/noise ratio. FIG. 22C shows the result for two close frequency components in the input signal. It can be seen that the used peak interpolation is sufficient. 

1. Method for analyzing a spectrum of an input signal (x(t)) having at least one line with a center frequency (ω_(x)) at the center of the line comprising the following steps: zero-mixing the input signal (x(t)) to produce a base band signal (z(t)) by sweeping a local oscillator frequency (ω_(s)), filtering the base band signal (z(t)) with a resolution filter (4) to produce a filtered base band signal (y(t)), reconstructing the envelope (E(ω)) of the spectrum of the input signal (x(t)) by using an estimated amplitude (ŷ_(x)) at an estimated center frequency ({circumflex over (ω)}_(x)) of each line of the input signal (x(t)), characterized in that only the reel component (I) of the base band signal (z(t)) is filtered with the resolution filter (4) and the imaginary component (Q) is generated from the filtered base band signal (y(t)) by performing a Hilbert transform.
 2. Method according to claim 1, characterized in that reconstructing the envelope (E(ω)) of the spectrum of the input signal (x(t)) is done on the basis of the reel component (I) and on the basis of the imaginary component (Q) generated with the Hilbert transform.
 3. Method according to claim 1 or 2, characterized in that the reel component (I) of the filtered base band signal (y(t)) is delayed by a delay time equivalent to the processing time of the Hilbert transform.
 4. Method according to any of claims 1 to 3, characterized in that the amplitude values of the imaginary component (Q) generated by performing the Hilbert transform are corrected by an estimation on the basis of the neighbouring amplitude values of the reel component (I).
 5. Method according to any of claims 1 to 4, characterised in that the Hilbert transform is performed by the use of a digital finite impulse response filter using the following coefficients ${h_{n} = \frac{1 - {\mathbb{e}}^{j\quad n\quad\pi}}{n\quad\pi}},{n \neq 0},{h_{n} = 0},{n = 0}$ wherein n is an index running from a first negative integer (−M) to a second positive integer (+M) .
 6. Method according to any of claims 1 to 5, characterised in that the estimated amplitude (ŷ_(x)) and the estimated center frequency ({circumflex over (ω)}_(x)) are calculated from the time of occurrence (t_(i)), the duration (ΔT_(i)) and the maximum value (y_(i)) of at least one evaluated halfwave (10) of the reel component (I) and of the imaginary component (Q) of the filtered base band signal (y(t)).
 7. Method according to claim 6, characterized in that the range of estimated individual values of the center frequency ({circumflex over (ω)}_(x,i)) is divided into intervals (11 a, 11 b) for the reel component (I) and for the imaginary component (Q), the estimated individual values of the center frequency ({circumflex over (ω)}_(x,i)) of all evaluated halfwaves (10) are related to these intervals (11 a, 11 b) giving a count for each estimated value of the center frequency ({circumflex over (ω)}_(x,i)) falling within the respective interval (11 a, 11 b) and the estimated individual values of the center frequency ({circumflex over (ω)}_(x,i)) and the estimated individual amplitude values (ŷ_(x,i)) at the centre frequency are averaged only for the interval(s) (11 c) having a minimum number of counts in order to obtain the estimated center frequency ({circumflex over (ω)}_(x)) and the estimated amplitude (ŷ_(x)) at the estimated center frequency ({circumflex over (ω)}_(x)).
 8. Method according to claim 7, characterized in that the intervals (11 a, 11 b) overlap.
 9. Apparatus (1) for analyzing a spectrum of an input signal (x(t)) having at least one line with a center frequency (ω_(x)) at the center of the line comprising: a mixer (2) for zero-mixing the input signal (x(t)) to produce a base band signal (z(t)) by sweeping a local oscillator frequency (ω_(s)) generated by a local oscillator (3), a resolution filter (4) for filtering the base band signal (z(t)) to produce a filtered base band signal (y(t)) and envelope reconstruction means (27) for reconstructing the envelope (E(ω)) of the spectrum of the input signal (x(t)) by using an estimated amplitude (ŷ_(x)) at an estimated center frequency ({circumflex over (ω)}_(x)) of each line of the input signal (x(t)), characterized in that only the reel component (I) of the base band signal (z(t)) is filtered with the resolution filter (4) and the imaginary component (Q) is generated from the filtered base band signal (y(t)) by performing a Hilbert transform in a Hilbert filter (21) arranged downstream of the resolution filter (4).
 10. Apparatus according to claim 9, characterized in that in the envelope reconstruction means (27) the reconstruction of the envelope (E(ω)) of the spectrum of the input signal (x(t)) is made on the basis of the reel component (I) and on the basis of the imaginary component (Q) generated by the Hilbert filter (21).
 11. Apparatus according to claim 9 or 10, characterized by delay means (20) arranged parallel to the Hilbert filter (21) for delaying the reel component (I) of the filtered base band signal (y(t) by a delay time equivalent to the processing time of the Hilbert filter (21).
 12. Apparatus according to any of claims 9 to 11, characterized by correction means (22) for correcting the amplitude values of the imaginary component (Q) generated by the Hilbert filter (21) by an estimation on the basis of the neighbouring amplitude values of the reel component (I).
 13. Apparatus according to any of claims 9 to 12, characterized in that the Hilbert filter (21) is a digital finite impulse response filter using the following coefficients h_(n) ${h_{n} = \frac{1 - {\mathbb{e}}^{j\quad n\quad\pi}}{n\quad\pi}},{n \neq 0},{h_{n} = 0},{n = 0}$ wherein n is an index running from a first negative integer (−M) to a second positive integer (+M).
 14. Apparatus according to any of claims 9 to 13, characterised by detector means (23) for detecting the time of occurrence (t_(i)), the duration (ΔT_(i)) and the maximum value (y_(i)) of at least one halfwave of the filtered base band signal (y(t)) and translation means (24) wherein an estimated amplitude (ŷ_(x)) and an estimated center frequency ({circumflex over (ω)}_(x)) are calculated from the time of occurrence (t_(i)), the duration (ΔT_(i)) and the maximum value (y_(i)) of at least one evaluated halfwave (10) of the reel component (I) and of the imaginary component (Q) of the filtered base band signal (y(t)).
 15. Apparatus according to claim 14, characterized by classification means (25) wherein the range of estimated individual values of the center frequency ({circumflex over (ω)}_(x,i)) is divided into intervals (11 a, 11 b) for the reel component (I) and for the imaginary component (Q), the estimated individual values of the center frequency ({circumflex over (ω)}_(x,i)) of all evaluated halfwaves (10) are related to these intervals (11 a, 11 b) giving a count for each estimated value of the center frequency ({circumflex over (ω)}_(x,i)) falling within the interval (11 a, 11 b) and the estimated individual values of the center frequency ({circumflex over (ω)}_(x,i)) and the estimated individual amplitude values (ŷ_(x,i)) at the center frequency are averaged only for the interval(s) (11 c) having a minimum number of counts in order to obtain the estimated center frequency ({circumflex over (ω)}_(x)) and the estimated amplitude (ŷ_(x)) at the estimated center frequency ({circumflex over (ω)}_(x)).
 16. Apparatus according to claim 15, characterised in that the intervals (11 a, 11 b) overlap. 